using UwinEducation.Application.Dtos;
using UwinEducation.Shared.Models;

namespace UwinEducation.Application.Common.Interfaces
{
    public interface ITermService
    {
        /// <summary>
        /// 获取学期分页列表
        /// </summary>
        Task<PagedResult<TermDto>> GetPagedListAsync(TermPageRequest pageRequest);

        /// <summary>
        /// 获取学期详情
        /// </summary>
        Task<TermDto> GetByIdAsync(Guid id);

        /// <summary>
        /// 创建学期
        /// </summary>
        Task<TermDto> CreateAsync(CreateTermDto input);

        /// <summary>
        /// 更新学期
        /// </summary>
        Task<TermDto> UpdateAsync(UpdateTermDto input);

        /// <summary>
        /// 删除学期
        /// </summary>
        Task DeleteAsync(Guid id);
    }
} 